279 research outputs found

    Flexible Views for View-based Model-driven Development

    Get PDF
    Modern software development faces the problem of fragmentation of information across heterogeneous artefacts in different modelling and programming languages. In this dissertation, the Vitruvius approach for view-based engineering is presented. Flexible views offer a compact definition of user-specific views on software systems, and can be defined the novel ModelJoin language. The process is supported by a change metamodel for metamodel evolution and change impact analysis

    Finding a Universal Execution Strategy for Model Transformation Networks

    Get PDF
    When using multiple models to describe a (software) system, one can use a network of model transformations to keep the models consistent after changes. No strategy exists, however, to orchestrate the execution of transformations if the network has an arbitrary topology. In this paper, we analyse how often and in which order transformations need to be executed. We argue why linear execution bounds are too restrictive to be useful in practice and prove that there is no upper bound for the number of necessary executions. To avoid non-termination, we propose a conservative strategy that makes execution failures easier to understand. These insights help developers and users of transformation networks to understand under which circumstances their networks can terminate. Additionally, the proposed strategy helps them to find the cause when a network cannot restore consistency

    Accurate prediction of protein–protein interactions from sequence alignments using a Bayesian method

    Get PDF
    Accurate and large-scale prediction of protein–protein interactions directly from amino-acid sequences is one of the great challenges in computational biology. Here we present a new Bayesian network method that predicts interaction partners using only multiple alignments of amino-acid sequences of interacting protein domains, without tunable parameters, and without the need for any training examples. We first apply the method to bacterial two-component systems and comprehensively reconstruct two-component signaling networks across all sequenced bacteria. Comparisons of our predictions with known interactions show that our method infers interaction partners genome-wide with high accuracy. To demonstrate the general applicability of our method we show that it also accurately predicts interaction partners in a recent dataset of polyketide synthases. Analysis of the predicted genome-wide two-component signaling networks shows that cognates (interacting kinase/regulator pairs, which lie adjacent on the genome) and orphans (which lie isolated) form two relatively independent components of the signaling network in each genome. In addition, while most genes are predicted to have only a small number of interaction partners, we find that 10% of orphans form a separate class of ‘hub' nodes that distribute and integrate signals to and from up to tens of different interaction partners

    Flexible Views for View-Based Model-Driven Development

    Get PDF
    ABSTRACT Model-driven development processes suffer from growing complexity, which leads to information spread across heterogeneous metamodels as well as drift and erosion between architecture and implementation. In this paper, we present a view-based modeling approach based on Orthographic Software Modeling (OSM), and introduce flexible views as a concept for the creation of custom, user-specific views. The envisioned benefit of the approach is to improve software quality, to increase consistency between the various modeling artifacts in model-driven software development, and to reduce the complexity for software developers

    A Formal Approach to Prove Compatibility in Transformation Networks

    Get PDF
    The increasing complexity of software and cyberphysical systems is handled by dividing the description of the system under construction into different models or views, each with an appropriate abstraction for the needs of specific roles. Since all such models describe the same system, they usually share an overlap of information, which can lead to inconsistencies if overlapping information is not modified uniformly in all models. A well-researched approach to make these overlaps explicit and resolve inconsistencies are incremental, bidirectional model transformations. They specify the constraints between two metamodels and the restoration of consistency between their instances. Relating more than two metamodels can be achieved by combining bidirectional transformations to a network. However, such a network may contain cycles of transformations, whose consistency constraints can be contradictory if they are not aligned with each other and thus cannot be fulfilled at the same time. Such transformations are considered incompatible. In this article, we provide a formal definition of consistency and compatibility of transformations and propose an inductive approach to prove compatibility of a given network of transformations. We prove correctness of the approach based on these formal definitions. Furthermore, we present an operationalization of the approach at the example of QVT-R. It detects contradictions between relations by transforming them into first-order logic formulae and evaluating them with an SMT solver. The approach operates conservatively, i.e., it is not able to prove compatibility in all cases, but it identifies transformations as compatible only if they actually are. We applied the approach to different evaluation networks and found that it operates conservatively and is able to properly prove compatibility in 80% of the cases, indicating its practical applicability. Its limitations especially arise from restricted capabilities of the used SMT solver, but not from conceptual shortcomings. Our approach enables multiple domain experts to define transformations independently and to check their compatibility when combining them to a network, relieving them from the necessity to align the transformations with each other a priori and to ensure compatibility manuall

    Realizing Change-Driven Consistency for Component Code, Architectural Models, and Contracts in Vitruvius

    Get PDF
    During the development of component-based software systems, it is often impractical or even impossible to include all development information into the source code. Instead, specialized languages are used to describe components and systems on different levels of abstraction or from different viewpoints: Component-based architecture models and contracts, for example, can be used to describe the system on a high level of abstraction, and to formally specify component constraints. Since models, contracts, and code contain redundant information, inconsistencies can occur if they are modified independently. Keeping this information consistent manually can require considerable effort, and can lead to costly errors, for example, when security-relevant components are verified against inconsistent contracts. In this technical report, we present details on realizing an approach for keeping component-based architecture models and contracts specified in the Java Modeling Language (JML) consistent with Java source code. We use change-driven incremental transformations and the Vitruvius framework to automate the consistency preservation where this is possible. Using two case studies, we demonstrate how to detect and propagate changes and refactoring operations to keep models and contracts consistent with the source code

    Does managed competition constrain hospitals' contract prices? Evidence from the Netherlands

    Get PDF
    In the Dutch health care system, health insurers negotiate with hospitals about the pricing of hospital products in a managed competition framework. In this paper, we study these contract prices that became for the first time publicly available in 2016. The data show substantive price variation between hospitals for the same products, and within a hospital for the same product across insurers. About 27% of the contract prices for a hospital product are at least 20% higher or lower than the average contract price in the market. For about half of the products, the highest and the lowest contract prices across hospitals differ by a factor of three or more. Moreover, hospital product prices do not follow a consistent ranking across hospitals, suggesting substantial cross-subsidization between hospital products. Potential explanations for the large and seemingly random price variation are: (i) different cost pricing methods used by hospitals, (ii) uncertainty due to frequent changes in the hospital payment system, (iii) price adjustments related to negotiated lumpsum payments and (iv) differences in hospital and insurer market power. Several policy options are discussed to reduce variation and increase transparency of hospital prices

    4th Workshop on View-Based, Aspect-Oriented and Orthographic Software Modelling : Proceedings, 2 March 2016, Karlsruhe, Germany

    Get PDF
    Modern software engineering paradigms, such as model-driven development, multi-view modelling, or role-based software development, use different types and combinations of abstraction techniques to decompose systems into human-tractable pieces. This leads to an increasing number of models and views that have to be considered, which presents fundamental challenges for engineers of complex softwareintensive systems. Software developers need technologies for operationally managing views of systems in a consistent way, and software architects require concepts that indicate in which way views and models should be developed, evolved, and navigated as projects evolve. The goal of this workshop is to distil a common understanding of existing approaches and current research directions in treating heterogeneous models of software and systems
    • 

    corecore